#ifndef C_LOG__
#define C_LOG__

#include <stdarg.h>
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include <string.h>
#include <stdbool.h>
#include <direct.h>
#include <Windows.h>
#include <wchar.h>
#include <locale.h>


typedef struct params {
    char* log_dir_name;
    wchar_t* log_file_prefix_name;
}PARAMS;

void cleanup();

bool log_init(const wchar_t* work_path, const wchar_t* log_file_prefix_name);

void log_print_out(const char* format, ...);

#define PE( format, ...) log_print_out( "[ERROR]    "format, __VA_ARGS__)
#define PW( format, ...) log_print_out( "[WARNNING] "format, __VA_ARGS__)
#define PI( format, ...) log_print_out( "[INFO]     "format, __VA_ARGS__)

	

#endif // !__C_LOG__

